import Vue from 'vue'
import ContextMenu from './context-menu/index.vue'
import ContextMenuItem from './context-menu/context-menu-item/index.vue'
import DataTable from './data-table/index.vue'
import PagedList from './paged-list/index.vue'
import OssUpload from './oss-upload/index.vue'
import UploadManager from './upload-manager/index.vue'
import DocIcon from './doc-icon/index.vue'
import SearchSelect from './search-select/index.vue'
import HighlightText from './highlight-text/index.vue'
import TeamAndMemberTree from './team-and-member-tree/index.vue'
import EmptyData from './empty-data/index.vue'
import TagInput from './tag-input/index.vue'
import InlineInput from './inline-input/index.vue'
import ColorAvatar from './color-avatar/index.vue'
import CodeInput from './code-input/index.vue'
import RemoteScript from './remote-script/index.vue'
import ConfigModal from './config-modal/index.vue'

const components: Record<string, any> = {
  ContextMenu,
  ContextMenuItem,
  DataTable,
  PagedList,
  OssUpload,
  UploadManager,
  DocIcon,
  SearchSelect,
  HighlightText,
  TeamAndMemberTree,
  EmptyData,
  TagInput,
  InlineInput,
  ColorAvatar,
  CodeInput,
  RemoteScript,
  ConfigModal
}

Object.keys(components).forEach((key: string) => {
  Vue.component(key, components[key])
})
